package com.dayu.finecomm.iot.params;

import com.alibaba.fastjson.annotation.JSONField;

/**
 * Iot设备参数
 * @author XuJialiang
 * @since 2017-09-06 15:45:12
 * @version V1.0.0
 */
public class IotDeviceParam extends IotPlatParam{
	@JSONField(name="deviceId")
	public String deviceId;
	
	@JSONField(name="imei")
	public String imei;
	
	@JSONField(name="devType")
	public String devType;
	
	@JSONField(name="mfrsId")
	public String mfrsId;
	
	@JSONField(name="mfrsName")
	public String mfrsName;
	
	@JSONField(name="model")
	public String model;
	
	@JSONField(name="protocolType")
	public String protocolType;
	
	public static class Device {
		@JSONField(name="nodeId")
		public String nodeId;
			
		@JSONField(name="verifyCode")
		public String verifyCode;
			
		@JSONField(name="endUserId")
		public String endUserId;
		
		@JSONField(name="psk")
		public String psk;
			
		@JSONField(name="deviceId")
		public String deviceId;
			
		@JSONField(name="deviceType")
		public String deviceType;
			
		@JSONField(name="manufacturerId")
		public String manufacturerId;
			
		@JSONField(name="model")
		public String model;
			
		@JSONField(name="protocolType")
		public String protocolType;
			
		@JSONField(name="manufacturerName")
		public String manufacturerName;
			
		@JSONField(name="name")
		public String name;
			
		@JSONField(name="endUser")
		public String endUser;
			
		@JSONField(name="location")
		public String location;
	}
	
	@JSONField(name="device")
	public Device device;
		
	public static class App {
		@JSONField(name="abnormalTime")
		public long abnormalTime;
			
		@JSONField(name="offlineTime")
		public long offlineTime;
	}
		
	@JSONField(name="app")
	public App app;
		
	public static class Location {
		@JSONField(name="deviceId")
		public String deviceId;
		
		@JSONField(name="latitude")
		public double latitude;
			
		@JSONField(name="longitude")
		public double longitude;
			
		@JSONField(name="accuracy")
		public double accuracy = 0;
			
		@JSONField(name="description")
		public String description;
			
		@JSONField(name="region")
		public String region;
	}
		
	@JSONField(name="location")
	public Location location;
}
